#pragma once

#include <iostream>
#include <opencv2/opencv.hpp>

class EllipseCallBackData
{
public:
	cv::Mat img;
	int centerX, centerY;
	int maAxis, miAxis;
	int angle, startAngle, endAngle;
public:
	EllipseCallBackData() = default;
	EllipseCallBackData(const cv::Mat& img, const cv::Point& center, cv::Size size, int angle, int startAngle, int endAngle)
		:img(img), centerX(center.x), centerY(center.y), maAxis(size.width), miAxis(size.height), angle(angle), startAngle(startAngle), endAngle(endAngle) {}
};

void demo_drawLineAndRect(void);
void demo_drawPolygon(void);
void demo_drawCircle(void);
void demo_drawEllipse(void);


void _on_ChangeEllipse(int pos, void* userdata);

void demo_drawPutText(void);
